package com.bjbn.service;

import com.bjbn.entity.EsDeviceValueThs;
import com.bjbn.entity.EsDeviceValueLx;

import java.util.List;

/**
 * Elasticsearch服务接口
 */
public interface ElasticsearchService {
    
    /**
     * 保存温湿度传感器数据到ES
     * 
     * @param data 温湿度传感器数据
     * @return 是否保存成功
     */
    boolean saveThsData(EsDeviceValueThs data);
    
    /**
     * 批量保存温湿度传感器数据到ES
     * 
     * @param dataList 温湿度传感器数据列表
     * @return 是否保存成功
     */
    boolean saveThsDataBatch(List<EsDeviceValueThs> dataList);
    
    /**
     * 保存照度传感器数据到ES
     * 
     * @param data 照度传感器数据
     * @return 是否保存成功
     */
    boolean saveLxData(EsDeviceValueLx data);
    
    /**
     * 批量保存照度传感器数据到ES
     * 
     * @param dataList 照度传感器数据列表
     * @return 是否保存成功
     */
    boolean saveLxDataBatch(List<EsDeviceValueLx> dataList);
    
    /**
     * 根据设备编号查询温湿度传感器数据
     * 
     * @param deviceNum 设备编号
     * @param startTime 开始时间
     * @param endTime 结束时间
     * @return 数据列表
     */
    List<EsDeviceValueThs> queryThsDataByDeviceNum(String deviceNum, String startTime, String endTime);
    
    /**
     * 根据设备编号查询照度传感器数据
     * 
     * @param deviceNum 设备编号
     * @param startTime 开始时间
     * @param endTime 结束时间
     * @return 数据列表
     */
    List<EsDeviceValueLx> queryLxDataByDeviceNum(String deviceNum, String startTime, String endTime);
} 